This invention relates generally to linking and querying linked data in a computer system, and more specifically to managing and sub-classifying units of data, called objects, through the use of codified linkages between objects, and a system for querying and presenting such objects, their linkages, and the linkage data so codified.
One of the most common uses for computer systems is the storage and retrieval of data. Data is often diverse in kind and granularity, such as text and graphic files, database fields, records, sets, objects, executable routines, and others. As the volume of data increases, so does the need for better methods of expressing and querying relationships within the data.
Although the prior art provides methods for sub-classifying and cross-referencing data, as well as for querying such sub-classifications and cross-references, it suffers from a number of major shortcomings. One major shortcoming of prior art systems for cross-referencing data is that they do not provide for the codification of links to allow each link classification to store a codified set of user-defined fields relevant to that classification itself. Prior art systems exist for linking multiple units of data. For example, data on Suzanne and data on her husband Jerry may be linked.
Prior art systems allow, for example, a link to be established or programmed between a specific person and a specific school. The link itself contains only the type of link ("Pupil" in this case) and some internal information such as record or object numbers, offsets or record keys to maintain the link between the subject records of the link. Two such "Pupil" links are depicted in FIG. 3.
Prior art systems suffer from a number of limitations. First, they do not provide for user-specified codification of the links themselves. They provide only for the codification of the records in the tables. This forces the user to do considerable custom programming to facilitate the storage of such link information, or suffer increased difficulties accessing and querying such link information if the information is stored free-form and not codified.
Such custom programming is an extensive task when multiple links of various types and codifications are to be provided from any number of individual records in any number of different tables, using any number of different file types and fragments in any expanse of computer store, especially when the links are many and/or contain considerable quantities of information. Prior art systems also require substantial on-going re-programming and maintenance to accommodate information pertinent to links as new link types are needed and as the nature of link information changes.